/**
 * 作者：
 * 创建时间：2012-6-26 下午2:30:58
 */
package dragon.model.base;

/**
 * 模型基类，用于定义公共部分
 */
public class Model {

	/**
	 * 名称
	 */
	@ModelDescribe(annotation = "名称")
	private String name;

	/**
	 * 编码
	 */
	@ModelDescribe(annotation = "编码")
	private String code;

	/**
	 * 排序号
	 */
	@ModelDescribe(annotation = "排序号")
	private int orderNum = 0;

	/**
	 * 描述
	 */
	@ModelDescribe(annotation = "描述")
	private String description;

	/**
	 * 是否系统模型(0:否，1:是)
	 */
	@ModelDescribe(annotation = "是否系统模型(0:否，1:是)")
	private int isSystem = 0;

	/**
	 * 是否启用(0:否，1:是)，目前仅应用于业务模型
	 */
	@ModelDescribe(annotation = "是否启用(0:否，1:是)，目前仅应用于业务模型")
	private int isActive = 0;

	/**
	 * 模型所属包
	 */
	@ModelDescribe(annotation = "模型所属包", runtime = true)
	private String pkg;

	// TODO:创建时间，最后修改时间，相关人员，模型审计开发

	@Override
	public String toString() {
		StringBuilder str = new StringBuilder();
		str.append("dragon.model.base.Model:\n");
		str.append("name=").append(name).append("\t");
		str.append("code=").append(code).append("\t");
		str.append("orderNum=").append(orderNum).append("\t");
		str.append("description=").append(description).append("\t");
		str.append("isSystem=").append(isSystem).append("\t");
		str.append("isActive=").append(isActive).append("\t");
		str.append("pkg=").append(pkg).append("\t");
		str.append("\n");
		return str.toString();
	}

	public String toHtmlString() {
		StringBuilder str = new StringBuilder();
		str.append("dragon.model.base.Model:<br/>");
		str.append("name=").append(name).append("&nbsp;&nbsp;");
		str.append("code=").append(code).append("&nbsp;&nbsp;");
		str.append("orderNum=").append(orderNum).append("&nbsp;&nbsp;");
		str.append("description=").append(description).append("&nbsp;&nbsp;");
		str.append("isSystem=").append(isSystem).append("&nbsp;&nbsp;");
		str.append("isActive=").append(isActive).append("&nbsp;&nbsp;");
		str.append("pkg=").append(pkg).append("&nbsp;&nbsp;");
		str.append("<br/>");
		return str.toString();
	}

	/**
	 * @return the name
	 */
	public String getName() {
		return name;
	}

	/**
	 * @param name
	 *            the name to set
	 */
	public void setName(String name) {
		this.name = name;
	}

	/**
	 * @return the code
	 */
	public String getCode() {
		return code;
	}

	/**
	 * @param code
	 *            the code to set
	 */
	public void setCode(String code) {
		this.code = code;
	}

	/**
	 * @return the orderNum
	 */
	public int getOrderNum() {
		return orderNum;
	}

	/**
	 * @param orderNum
	 *            the orderNum to set
	 */
	public void setOrderNum(int orderNum) {
		this.orderNum = orderNum;
	}

	/**
	 * @return the description
	 */
	public String getDescription() {
		return description;
	}

	/**
	 * @param description
	 *            the description to set
	 */
	public void setDescription(String description) {
		this.description = description;
	}

	/**
	 * @return the isSystem
	 */
	public int getIsSystem() {
		return isSystem;
	}

	/**
	 * @param isSystem
	 *            the isSystem to set
	 */
	public void setIsSystem(int isSystem) {
		this.isSystem = isSystem;
	}

	/**
	 * @return the isActive
	 */
	public int getIsActive() {
		return isActive;
	}

	/**
	 * @param isActive
	 *            the isActive to set
	 */
	public void setIsActive(int isActive) {
		this.isActive = isActive;
	}

	/**
	 * @return the pkg
	 */
	public String getPkg() {
		return pkg;
	}

	/**
	 * @param pkg
	 *            the pkg to set
	 */
	public void setPkg(String pkg) {
		this.pkg = pkg;
	}

}
